

//数值枚举 它的默认值是从0开始，然后依次递增，它的枚举的值是可以改的，改了之后，还是依次往后增加，如果前面指定了值，后面的值，就会依次增加
// enum Sex{
//     Man,
//     Woman,
//     Unknow
// }
// 字符串枚举，如果给某个赋值了，所有的都要赋值
enum Sex{
    Man = 'man',
    Woman = 'woman',
    Unknow='unknow'
}
let person = {
    name:'lihua',age:22,sex:Sex.Man
}
console.log(person);

enum Season{
    spring,
    summer,
    autumn,
    winter
}
function getseason(season: Season) {
    switch (season) {
        case Season.spring:
            console.log('spring');
            break
        case Season.summer:
            console.log('summer');
           break 
            
    }
}

getseason(Season.spring)


//断言  断言是把一个宽泛的类型，断言成一个更加具体的类型，因为只有更加具体的类型，才能.出相应的属性和方法
interface User{
    name:string,age:number,sex?:number
}
let user={} as User
 user = {
    name:'fds',age:1
}
export {}